package com.tdam2011.grupo06;

import java.util.ArrayList;

import android.os.Bundle;
import android.app.Activity;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;

public class ListaAccionesLlamadas extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_lista_acciones_llamadas);
        
        ListView lv = (ListView) findViewById(R.id.list);
        AccionLlamadaAdapter adapter = new AccionLlamadaAdapter(obtenerAcciones());     
        lv.setAdapter(adapter);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_lista_acciones_llamadas, menu);
        return true;
    }

    private ArrayList<AccionLLamada> obtenerAcciones(){
    	ArrayList<AccionLLamada> acciones = new ArrayList<AccionLLamada>();
    	
    	acciones.add(new AccionLLamada("20/09/2012 07:30", "Entrante"));
    	acciones.add(new AccionLLamada("20/09/2012 07:35", "Saliente"));
    	acciones.add(new AccionLLamada("20/09/2012 07:40", "Perdida"));
    	
    	return acciones;
    }
    
    class AccionLLamada{
    	String fechaHora;
    	String descripcion;
    	
    	public AccionLLamada (String fechaHora, String descripcion){
    		this.fechaHora = fechaHora;
    		this.descripcion = descripcion;
    	}
    	
    	public String getFechaHora(){
    		return this.fechaHora;
    	}
    	
    	public String getDescripcion(){
    		return this.descripcion;
    	}
    }
    
    class Holder{
    	TextView txtFechaHora, txtDescripcion; 
    }
    
    class AccionLlamadaAdapter extends BaseAdapter{

    	private ArrayList<AccionLLamada> _acciones;
    	private LayoutInflater _inflater;
    	
    	public AccionLlamadaAdapter(ArrayList<AccionLLamada> acciones){
    		_acciones = acciones;
    		_inflater = LayoutInflater.from(ListaAccionesLlamadas.this);
    	}
    	
		public int getCount() {
			// TODO Auto-generated method stub
			return _acciones.size();
		}

		public AccionLLamada getItem(int position) {
			// TODO Auto-generated method stub
			return _acciones.get(position);
		}

		public long getItemId(int position) {
			// TODO Auto-generated method stub
			return position;
		}

		public View getView(int position, View convertView, ViewGroup parent) {
			// TODO Auto-generated method stub
			Holder holder = null;
			if (convertView == null) {
				convertView = _inflater.inflate(R.layout.accion_llamada_item, null);
				holder = new Holder();
				
				holder.txtFechaHora = (TextView) convertView
						.findViewById(R.id.textView1);
				
				holder.txtDescripcion = (TextView) convertView
						.findViewById(R.id.textView2);
								
				convertView.setTag(holder);
			} else {
				holder = (Holder) convertView.getTag();
			}

			AccionLLamada accion = _acciones.get(position);

			holder.txtFechaHora.setText(accion.getFechaHora());
			holder.txtDescripcion.setText(accion.getDescripcion());

			return convertView;
		}
    	
    }
}